<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>

<body>
  <script>
    let a = {
      b: {
        c: {
          add() {
            console.log(123)
          }
        }
      }
    }

    // ES6中的可选链  
    // 语法：?.

    // 判断，如果a存在，并且，a对象中有b属性，并且b对象中有c属性，并且c属性中有add方法，则调用add方法
    // 否则，即中间任意一个环节出问题，找不到，则不再向后执行了
    a?.b?.c?.add();

    // if (a && a.b && a.b.c) {
    //   a.b.c.add();
    // } else {
    //   console.log('xxxxxx')
    // }
  </script>
</body>

</html>